library(survival)
library(FRESA.CAD)
## Loading required package: Rcpp
## Loading required package: stringr
## Loading required package: miscTools
## Loading required package: Hmisc
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:base':
##
## format.pval, units
## Loading required package: pROC
## Type 'citation("pROC")' for a citation.
##
## Attaching package: 'pROC'
## The following objects are masked from 'package:stats':
##
## cov, smooth, var
op <- par(no.readonly = TRUE)
pander::panderOptions('digits', 3)
pander::panderOptions('keep.trailing.zeros',TRUE)
data(lung)
## Warning in data(lung): data set 'lung' not found
lung$inst <- NULL
lung$status <- lung$status - 1
lung <- lung[complete.cases(lung),]
pander::pander(table(lung$status))
| 0 | 1 |
|---|---|
| 47 | 121 |
pander::pander(summary(lung$time))
| Min. | 1st Qu. | Median | Mean | 3rd Qu. | Max. |
|---|---|---|---|---|---|
| 5 | 175 | 268 | 310 | 416 | 1022 |
convar <- colnames(lung)[lapply(apply(lung,2,unique),length) > 10]
convar <- convar[convar != "time"]
topvar <- univariate_BinEnsemble(lung[,c("status",convar)],"status")
pander::pander(topvar)
| age | wt.loss |
|---|---|
| 0.106 | 0.106 |
topv <- min(5,length(topvar))
topFive <- names(topvar)[1:topv]
RRanalysis <- list();
idx <- 1
for (topf in topFive)
{
RRanalysis[[idx]] <- RRPlot(cbind(lung$status,lung[,topf]),
atRate=c(0.90),
timetoEvent=lung$time,
title=topf,
# plotRR=FALSE
)
idx <- idx + 1
}
names(RRanalysis) <- topFive
ROCAUC <- NULL
CstatCI <- NULL
LogRangp <- NULL
Sensitivity <- NULL
Specificity <- NULL
for (topf in topFive)
{
CstatCI <- rbind(CstatCI,RRanalysis[[topf]]$c.index$cstatCI)
LogRangp <- rbind(LogRangp,RRanalysis[[topf]]$surdif$pvalue)
Sensitivity <- rbind(Sensitivity,RRanalysis[[topf]]$ROCAnalysis$sensitivity)
Specificity <- rbind(Specificity,RRanalysis[[topf]]$ROCAnalysis$specificity)
ROCAUC <- rbind(ROCAUC,RRanalysis[[topf]]$ROCAnalysis$aucs)
}
rownames(CstatCI) <- topFive
rownames(LogRangp) <- topFive
rownames(Sensitivity) <- topFive
rownames(Specificity) <- topFive
rownames(ROCAUC) <- topFive
pander::pander(ROCAUC)
| est | lower | upper | |
|---|---|---|---|
| age | 0.591 | 0.494 | 0.688 |
| wt.loss | 0.556 | 0.458 | 0.654 |
pander::pander(CstatCI)
| mean.C Index | median | lower | upper | |
|---|---|---|---|---|
| age | 0.560 | 0.560 | 0.500 | 0.616 |
| wt.loss | 0.512 | 0.514 | 0.457 | 0.576 |
pander::pander(LogRangp)
| age | 0.919 |
| wt.loss | 0.358 |
pander::pander(Sensitivity)
| est | lower | upper | |
|---|---|---|---|
| age | 0.1157 | 0.0647 | 0.187 |
| wt.loss | 0.0496 | 0.0184 | 0.105 |
pander::pander(Specificity)
| est | lower | upper | |
|---|---|---|---|
| age | 0.872 | 0.743 | 0.952 |
| wt.loss | 0.894 | 0.769 | 0.965 |
meanMatrix <- cbind(ROCAUC[,1],CstatCI[,1],Sensitivity[,1],Specificity[,1])
colnames(meanMatrix) <- c("ROCAUC","C-Stat","Sen","Spe")
pander::pander(meanMatrix)
| ROCAUC | C-Stat | Sen | Spe | |
|---|---|---|---|---|
| age | 0.591 | 0.560 | 0.1157 | 0.872 |
| wt.loss | 0.556 | 0.512 | 0.0496 | 0.894 |
ml <- BSWiMS.model(Surv(time,status)~1,data=lung,NumberofRepeats = 10)
[+++++++-++++++++++++++++++++]..
sm <- summary(ml)
pander::pander(sm$coefficients)
| Estimate | lower | HR | upper | u.Accuracy | r.Accuracy | |
|---|---|---|---|---|---|---|
| ph.ecog | 4.32e-01 | 1.194 | 1.541 | 1.988 | 0.679 | 0.649 |
| sex | -4.59e-01 | 0.456 | 0.632 | 0.876 | 0.649 | 0.679 |
| pat.karno | -1.77e-03 | 0.997 | 0.998 | 1.000 | 0.506 | 0.720 |
| ph.karno | -2.90e-07 | 1.000 | 1.000 | 1.000 | 0.577 | 0.720 |
| age | 9.13e-08 | 1.000 | 1.000 | 1.000 | 0.565 | 0.720 |
| full.Accuracy | u.AUC | r.AUC | full.AUC | IDI | NRI | |
|---|---|---|---|---|---|---|
| ph.ecog | 0.601 | 0.601 | 0.620 | 0.600 | 0.0449 | 0.405 |
| sex | 0.601 | 0.620 | 0.601 | 0.600 | 0.0285 | 0.478 |
| pat.karno | 0.506 | 0.585 | 0.500 | 0.585 | 0.0292 | 0.342 |
| ph.karno | 0.577 | 0.570 | 0.500 | 0.570 | 0.0143 | 0.280 |
| age | 0.565 | 0.549 | 0.500 | 0.549 | 0.0162 | 0.195 |
| z.IDI | z.NRI | Delta.AUC | Frequency | |
|---|---|---|---|---|
| ph.ecog | 3.33 | 2.48 | -0.02005 | 1.0 |
| sex | 2.76 | 2.85 | -0.00167 | 1.0 |
| pat.karno | 2.44 | 2.24 | 0.08546 | 1.0 |
| ph.karno | 2.22 | 1.64 | 0.06998 | 0.5 |
| age | 1.97 | 1.14 | 0.04871 | 0.2 |
Here we evaluate the model using the RRPlot() function.
Here we will use the predicted event probability assuming a baseline hazard for events withing 5 years
timeinterval <- 2*mean(subset(lung,status==1)$time)
h0 <- sum(lung$status & lung$time <= timeinterval)
h0 <- h0/sum((lung$time > timeinterval) | (lung$status==1))
pander::pander(t(c(h0=h0,timeinterval=timeinterval)),caption="Initial Parameters")
| h0 | timeinterval |
|---|---|
| 0.85 | 578 |
index <- predict(ml,lung)
rdata <- cbind(lung$status,ppoisGzero(index,h0))
rrAnalysisTrain <- RRPlot(rdata,atRate=c(0.90),
timetoEvent=lung$time,
title="Raw Train: Lung Cancer",
ysurvlim=c(0.00,1.0),
riskTimeInterval=timeinterval)
obsexp <- rrAnalysisTrain$OERatio$atThrEstimates
pander::pander(obsexp)
| Observed | L.CI | H.CI | Expected | pvalue | |
|---|---|---|---|---|---|
| Total | 121 | 100.4 | 144.6 | 77.3 | 3.70e-06 |
| low | 83 | 66.1 | 102.9 | 51.6 | 4.96e-05 |
| 90% | 38 | 26.9 | 52.2 | 25.9 | 2.33e-02 |
maxx <- 1.1*max(c(obsexp$Observed,obsexp$Expected))
minx <- 0.9*min(c(obsexp$Observed,obsexp$Expected))
plot(obsexp$Expected,obsexp$Observed,
xlim=c(minx,maxx),
ylim=c(minx,maxx),
main="Cal. Expected vs Observed",
ylab="Observed",
xlab="Expected",
col=rainbow(nrow(obsexp)),
log="xy")
errbar(obsexp$Expected,obsexp$Observed,obsexp$L.CI,obsexp$H.CI,add=TRUE,pch=0,errbar.col=rainbow(nrow(obsexp)),cex=0.75)
lines(x=c(1,maxx),y=c(1,maxx),lty=2)
text(obsexp$Expected,obsexp$Observed,rownames(obsexp),pos=2,cex=0.75)
pander::pander(t(rrAnalysisTrain$keyPoints),caption="Threshold values")
| @:0.9 | @MAX_BACC | @MAX_RR | @SPE100 | p(0.5) | |
|---|---|---|---|---|---|
| Thr | 0.649 | 0.478 | 3.39e-01 | 3.39e-01 | 0.493 |
| RR | 1.214 | 1.742 | 6.85e+01 | 6.85e+01 | 1.270 |
| RR_LCI | 1.014 | 1.260 | 1.44e-01 | 1.44e-01 | 1.037 |
| RR_UCI | 1.454 | 2.408 | 3.26e+04 | 3.26e+04 | 1.555 |
| SEN | 0.314 | 0.826 | 1.00e+00 | 1.00e+00 | 0.612 |
| SPE | 0.830 | 0.511 | 1.91e-01 | 1.91e-01 | 0.596 |
| BACC | 0.572 | 0.669 | 5.96e-01 | 5.96e-01 | 0.604 |
| NetBenefit | 0.138 | 0.470 | 6.04e-01 | 6.04e-01 | 0.331 |
pander::pander(t(rrAnalysisTrain$OERatio$estimate),caption="O/E Ratio")
| O/E | Low | Upper | p.value |
|---|---|---|---|
| 1.57 | 1.3 | 1.87 | 3.7e-06 |
pander::pander(t(rrAnalysisTrain$OE95ci),caption="O/E Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 1.23 | 1.23 | 1.19 | 1.27 |
pander::pander(t(rrAnalysisTrain$OAcum95ci),caption="O/Acum Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 1.27 | 1.27 | 1.26 | 1.29 |
pander::pander(rrAnalysisTrain$c.index$cstatCI,caption="C. Index")
| mean.C Index | median | lower | upper |
|---|---|---|---|
| 0.651 | 0.651 | 0.591 | 0.714 |
pander::pander(t(rrAnalysisTrain$ROCAnalysis$aucs),caption="ROC AUC")
| est | lower | upper |
|---|---|---|
| 0.691 | 0.598 | 0.784 |
pander::pander((rrAnalysisTrain$ROCAnalysis$sensitivity),caption="Sensitivity")
| est | lower | upper |
|---|---|---|
| 0.314 | 0.233 | 0.405 |
pander::pander((rrAnalysisTrain$ROCAnalysis$specificity),caption="Specificity")
| est | lower | upper |
|---|---|---|
| 0.83 | 0.692 | 0.924 |
pander::pander(t(rrAnalysisTrain$thr_atP),caption="Probability Thresholds")
| 90% |
|---|
| 0.648 |
pander::pander(rrAnalysisTrain$surdif,caption="Logrank test")
| N | Observed | Expected | (O-E)^2/E | (O-E)^2/V | |
|---|---|---|---|---|---|
| class=0 | 122 | 83 | 95.6 | 1.65 | 7.95 |
| class=1 | 46 | 38 | 25.4 | 6.22 | 7.95 |
op <- par(no.readonly = TRUE)
calprob <- CoxRiskCalibration(ml,lung,"status","time")
( 849.0447 , 781.9918 , 1.468558 , 121 , 140.6966 )
pander::pander(c(h0=calprob$h0,
Gain=calprob$hazardGain,
DeltaTime=calprob$timeInterval),
caption="Cox Calibration Parameters")
| h0 | Gain | DeltaTime |
|---|---|---|
| 1.55 | 1.83 | 849 |
h0 <- calprob$h0
timeinterval <- calprob$timeInterval;
rdata <- cbind(lung$status,calprob$prob)
rrAnalysisTrain <- RRPlot(rdata,atRate=c(0.90),
timetoEvent=lung$time,
title="Train Cal: Lung",
ysurvlim=c(0.00,1.0),
riskTimeInterval=timeinterval)
obsexp <- rrAnalysisTrain$OERatio$atThrEstimates
pander::pander(obsexp)
| Observed | L.CI | H.CI | Expected | pvalue | |
|---|---|---|---|---|---|
| Total | 121 | 100.4 | 144.6 | 96.2 | 0.0142 |
| low | 83 | 66.1 | 102.9 | 64.2 | 0.0244 |
| 90% | 38 | 26.9 | 52.2 | 32.3 | 0.2912 |
maxx <- 1.1*max(c(obsexp$Observed,obsexp$Expected))
minx <- 0.9*min(c(obsexp$Observed,obsexp$Expected))
plot(obsexp$Expected,obsexp$Observed,
xlim=c(minx,maxx),
ylim=c(minx,maxx),
main="Cal. Expected vs Observed",
ylab="Observed",
xlab="Expected",
col=rainbow(nrow(obsexp)),
log="xy")
errbar(obsexp$Expected,obsexp$Observed,obsexp$L.CI,obsexp$H.CI,add=TRUE,pch=0,errbar.col=rainbow(nrow(obsexp)),cex=0.75)
lines(x=c(1,maxx),y=c(1,maxx),lty=2)
text(obsexp$Expected,obsexp$Observed,rownames(obsexp),pos=2,cex=0.75)
pander::pander(t(rrAnalysisTrain$keyPoints),caption="Threshold values")
| @:0.9 | @MAX_BACC | @MAX_RR | @SPE100 | p(0.5) | |
|---|---|---|---|---|---|
| Thr | 0.8523 | 0.695 | 5.31e-01 | 5.31e-01 | 5.31e-01 |
| RR | 1.2142 | 1.742 | 6.85e+01 | 6.85e+01 | 6.85e+01 |
| RR_LCI | 1.0143 | 1.260 | 1.44e-01 | 1.44e-01 | 1.44e-01 |
| RR_UCI | 1.4536 | 2.408 | 3.26e+04 | 3.26e+04 | 3.26e+04 |
| SEN | 0.3140 | 0.826 | 1.00e+00 | 1.00e+00 | 1.00e+00 |
| SPE | 0.8298 | 0.511 | 1.91e-01 | 1.91e-01 | 1.91e-01 |
| BACC | 0.5719 | 0.669 | 5.96e-01 | 5.96e-01 | 5.96e-01 |
| NetBenefit | -0.0484 | 0.283 | 4.64e-01 | 4.64e-01 | 4.64e-01 |
pander::pander(t(rrAnalysisTrain$OERatio$estimate),caption="O/E Ratio")
| O/E | Low | Upper | p.value |
|---|---|---|---|
| 1.26 | 1.04 | 1.5 | 0.0142 |
pander::pander(t(rrAnalysisTrain$OE95ci),caption="O/E Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 0.99 | 0.99 | 0.957 | 1.02 |
pander::pander(t(rrAnalysisTrain$OAcum95ci),caption="O/Acum Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 1.02 | 1.02 | 1.01 | 1.02 |
pander::pander(rrAnalysisTrain$c.index$cstatCI,caption="C. Index")
| mean.C Index | median | lower | upper |
|---|---|---|---|
| 0.651 | 0.653 | 0.596 | 0.711 |
pander::pander(t(rrAnalysisTrain$ROCAnalysis$aucs),caption="ROC AUC")
| est | lower | upper |
|---|---|---|
| 0.691 | 0.598 | 0.784 |
pander::pander((rrAnalysisTrain$ROCAnalysis$sensitivity),caption="Sensitivity")
| est | lower | upper |
|---|---|---|
| 0.314 | 0.233 | 0.405 |
pander::pander((rrAnalysisTrain$ROCAnalysis$specificity),caption="Specificity")
| est | lower | upper |
|---|---|---|
| 0.83 | 0.692 | 0.924 |
pander::pander(t(rrAnalysisTrain$thr_atP),caption="Probability Thresholds")
| 90% |
|---|
| 0.851 |
pander::pander(rrAnalysisTrain$surdif,caption="Logrank test")
| N | Observed | Expected | (O-E)^2/E | (O-E)^2/V | |
|---|---|---|---|---|---|
| class=0 | 122 | 83 | 95.6 | 1.65 | 7.95 |
| class=1 | 46 | 38 | 25.4 | 6.22 | 7.95 |
rcv <- randomCV(theData=lung,
theOutcome = Surv(time,status)~1,
fittingFunction=BSWiMS.model,
trainFraction = 0.95,
repetitions=200,
classSamplingType = "Pro"
)
.[++].[+++].[+++].[+++].[+++].[+++].[+++].[+++].[+++].[++]10 Tested: 75 Avg. Selected: 3.8 Min Tests: 1 Max Tests: 4 Mean Tests: 1.333333 . MAD: 0.4685681
.[+-].[+++].[+++].[+++].[+++].[+++].[++].[+++].[++++].[+++]20 Tested: 112 Avg. Selected: 3.8 Min Tests: 1 Max Tests: 8 Mean Tests: 1.785714 . MAD: 0.473474
.[+++].[+++].[++].[+++].[+++].[+++].[+++].[+].[+++].[++]30 Tested: 135 Avg. Selected: 3.733333 Min Tests: 1 Max Tests: 8 Mean Tests: 2.222222 . MAD: 0.4740328
.[+++].[+++].[+++].[+++].[+++].[+++].[+++].[++++].[+++].[+++]40 Tested: 150 Avg. Selected: 3.825 Min Tests: 1 Max Tests: 9 Mean Tests: 2.666667 . MAD: 0.4769031
.[++].[++].[++].[+++].[++-].[++].[++].[+].[+++].[++]50 Tested: 157 Avg. Selected: 3.68 Min Tests: 1 Max Tests: 12 Mean Tests: 3.184713 . MAD: 0.4743397
.[+++].[++].[++].[++].[+].[+++].[+++].[++].[++].[++]60 Tested: 165 Avg. Selected: 3.6 Min Tests: 1 Max Tests: 12 Mean Tests: 3.636364 . MAD: 0.4758089
.[++].[++].[+++].[+++].[+].[+++].[++].[++].[+++].[+++]70 Tested: 166 Avg. Selected: 3.571429 Min Tests: 1 Max Tests: 14 Mean Tests: 4.216867 . MAD: 0.4749926
.[+++].[+++].[++-].[++].[+++].[+++].[+++].[++].[+++].[++]80 Tested: 167 Avg. Selected: 3.575 Min Tests: 1 Max Tests: 14 Mean Tests: 4.790419 . MAD: 0.4745623
.[++-].[++].[+++].[+++].[++++].[+++].[++].[+++].[++].[++]90 Tested: 168 Avg. Selected: 3.577778 Min Tests: 1 Max Tests: 14 Mean Tests: 5.357143 . MAD: 0.4745711
.[++].[+++].[+++].[++].[+++].[+++].[+].[++-].[++].[++-]100 Tested: 168 Avg. Selected: 3.55 Min Tests: 1 Max Tests: 14 Mean Tests: 5.952381 . MAD: 0.474259
.[++++].[+++].[+++].[+++].[+++].[+++].[+++].[++].[+++].[++++]110 Tested: 168 Avg. Selected: 3.6 Min Tests: 1 Max Tests: 14 Mean Tests: 6.547619 . MAD: 0.4747092
.[+++].[++++].[++++].[+++].[+++].[+++].[+++].[+++].[++].[+++]120 Tested: 168 Avg. Selected: 3.641667 Min Tests: 2 Max Tests: 15 Mean Tests: 7.142857 . MAD: 0.4745077
.[+++].[++].[+++].[+-].[+++].[+++].[+++].[++].[+++].[+++]130 Tested: 168 Avg. Selected: 3.638462 Min Tests: 2 Max Tests: 15 Mean Tests: 7.738095 . MAD: 0.4745049
.[++].[++].[+++].[+++].[+++].[++].[+++].[+++].[++].[++]140 Tested: 168 Avg. Selected: 3.628571 Min Tests: 2 Max Tests: 15 Mean Tests: 8.333333 . MAD: 0.4744039
.[+++].[+++].[+++].[+++].[+++].[+++].[+++].[+].[++-].[++]150 Tested: 168 Avg. Selected: 3.626667 Min Tests: 2 Max Tests: 15 Mean Tests: 8.928571 . MAD: 0.4744466
.[++-].[++].[+++].[+++].[+++-].[+++].[+++].[++-].[++].[++]160 Tested: 168 Avg. Selected: 3.61875 Min Tests: 3 Max Tests: 17 Mean Tests: 9.52381 . MAD: 0.4744519
.[+++].[+++].[++-].[++].[+++].[++-].[+++].[+++].[+++].[++]170 Tested: 168 Avg. Selected: 3.617647 Min Tests: 3 Max Tests: 20 Mean Tests: 10.11905 . MAD: 0.4747196
.[++-].[++].[+++].[++].[++].[++].[+++].[++].[+].[+++]180 Tested: 168 Avg. Selected: 3.594444 Min Tests: 3 Max Tests: 20 Mean Tests: 10.71429 . MAD: 0.475085
.[++].[+++].[+++].[++].[++].[+++].[+++].[+++].[+++].[+++]190 Tested: 168 Avg. Selected: 3.6 Min Tests: 3 Max Tests: 21 Mean Tests: 11.30952 . MAD: 0.4752468
.[+++].[+++].[+++].[++].[++].[++-].[+++].[+++].[+++].[+++]200 Tested: 168 Avg. Selected: 3.605 Min Tests: 3 Max Tests: 22 Mean Tests: 11.90476 . MAD: 0.4753461
stp <- rcv$survTestPredictions
stp <- stp[!is.na(stp[,4]),]
bbx <- boxplot(unlist(stp[,1])~rownames(stp),plot=FALSE)
times <- bbx$stats[3,]
status <- boxplot(unlist(stp[,2])~rownames(stp),plot=FALSE)$stats[3,]
prob <- ppoisGzero(boxplot(unlist(stp[,4])~rownames(stp),plot=FALSE)$stats[3,],h0)
rdatacv <- cbind(status,prob)
rownames(rdatacv) <- bbx$names
names(times) <- bbx$names
rrAnalysisTest <- RRPlot(rdatacv,atRate=c(0.90),
timetoEvent=times,
title="Test: Lung Cancer",
ysurvlim=c(0.00,1.0),
riskTimeInterval=timeinterval)
pander::pander(t(rrAnalysisTest$keyPoints),caption="Threshold values")
| @:0.9 | @MAX_BACC | @MAX_RR | @SPE100 | p(0.5) | |
|---|---|---|---|---|---|
| Thr | 0.8640 | 0.675 | 0.538 | 5.18e-01 | 5.18e-01 |
| RR | 1.1859 | 2.958 | 3.079 | 1.46e+01 | 1.46e+01 |
| RR_LCI | 0.9720 | 1.387 | 1.312 | 3.47e-02 | 3.47e-02 |
| RR_UCI | 1.4469 | 6.309 | 7.226 | 6.13e+03 | 6.13e+03 |
| SEN | 0.1983 | 0.959 | 0.967 | 1.00e+00 | 1.00e+00 |
| SPE | 0.8936 | 0.298 | 0.255 | 4.26e-02 | 4.26e-02 |
| BACC | 0.5460 | 0.628 | 0.611 | 5.21e-01 | 5.21e-01 |
| NetBenefit | -0.0461 | 0.283 | 0.454 | 4.33e-01 | 4.33e-01 |
pander::pander(t(rrAnalysisTest$OERatio$estimate),caption="O/E Ratio")
| O/E | Low | Upper | p.value |
|---|---|---|---|
| 1.24 | 1.02 | 1.48 | 0.0229 |
pander::pander(t(rrAnalysisTest$OE95ci),caption="O/E Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 0.978 | 0.978 | 0.946 | 1.01 |
pander::pander(t(rrAnalysisTest$OAcum95ci),caption="O/Acum Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 0.977 | 0.977 | 0.969 | 0.985 |
pander::pander(rrAnalysisTest$c.index$cstatCI,caption="C. Index")
| mean.C Index | median | lower | upper |
|---|---|---|---|
| 0.596 | 0.595 | 0.524 | 0.657 |
pander::pander(t(rrAnalysisTest$ROCAnalysis$aucs),caption="ROC AUC")
| est | lower | upper |
|---|---|---|
| 0.61 | 0.51 | 0.711 |
pander::pander((rrAnalysisTest$ROCAnalysis$sensitivity),caption="Sensitivity")
| est | lower | upper |
|---|---|---|
| 0.198 | 0.131 | 0.281 |
pander::pander((rrAnalysisTest$ROCAnalysis$specificity),caption="Specificity")
| est | lower | upper |
|---|---|---|
| 0.894 | 0.769 | 0.965 |
pander::pander(t(rrAnalysisTest$thr_atP),caption="Probability Thresholds")
| 90% |
|---|
| 0.863 |
pander::pander(rrAnalysisTest$surdif,caption="Logrank test")
| N | Observed | Expected | (O-E)^2/E | (O-E)^2/V | |
|---|---|---|---|---|---|
| class=0 | 139 | 97 | 103.1 | 0.367 | 2.52 |
| class=1 | 29 | 24 | 17.9 | 2.118 | 2.52 |
rdatacv <- cbind(status,prob,times)
calprob <- CalibrationProbPoissonRisk(rdatacv)
( 859.155 , 781.9918 , 1.486045 , 121 , 143.3226 )
pander::pander(c(h0=calprob$h0,
Gain=calprob$hazardGain,
DeltaTime=calprob$timeInterval),
caption="Cox Calibration Parameters")
| h0 | Gain | DeltaTime |
|---|---|---|
| 0.85 | 1 | 859 |
timeinterval <- calprob$timeInterval;
rdata <- cbind(status,calprob$prob)
rrAnalysisTest <- RRPlot(rdata,atRate=c(0.90),
timetoEvent=times,
title="Calibrated Test: Lung",
ysurvlim=c(0.00,1.0),
riskTimeInterval=timeinterval)
pander::pander(t(rrAnalysisTest$keyPoints),caption="Threshold values")
| @:0.9 | @MAX_BACC | @MAX_RR | @SPE100 | p(0.5) | |
|---|---|---|---|---|---|
| Thr | 0.8640 | 0.675 | 0.538 | 5.18e-01 | 5.18e-01 |
| RR | 1.1859 | 2.958 | 3.079 | 1.46e+01 | 1.46e+01 |
| RR_LCI | 0.9720 | 1.387 | 1.312 | 3.47e-02 | 3.47e-02 |
| RR_UCI | 1.4469 | 6.309 | 7.226 | 6.13e+03 | 6.13e+03 |
| SEN | 0.1983 | 0.959 | 0.967 | 1.00e+00 | 1.00e+00 |
| SPE | 0.8936 | 0.298 | 0.255 | 4.26e-02 | 4.26e-02 |
| BACC | 0.5460 | 0.628 | 0.611 | 5.21e-01 | 5.21e-01 |
| NetBenefit | -0.0461 | 0.283 | 0.454 | 4.33e-01 | 4.33e-01 |
pander::pander(t(rrAnalysisTest$OERatio$estimate),caption="O/E Ratio")
| O/E | Low | Upper | p.value |
|---|---|---|---|
| 1.25 | 1.04 | 1.49 | 0.0168 |
pander::pander(t(rrAnalysisTest$OE95ci),caption="O/E Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 0.989 | 0.99 | 0.957 | 1.02 |
pander::pander(t(rrAnalysisTest$OAcum95ci),caption="O/Acum Mean")
| mean | 50% | 2.5% | 97.5% |
|---|---|---|---|
| 0.978 | 0.978 | 0.97 | 0.986 |
pander::pander(rrAnalysisTest$c.index$cstatCI,caption="C. Index")
| mean.C Index | median | lower | upper |
|---|---|---|---|
| 0.596 | 0.596 | 0.535 | 0.661 |
pander::pander(t(rrAnalysisTest$ROCAnalysis$aucs),caption="ROC AUC")
| est | lower | upper |
|---|---|---|
| 0.61 | 0.51 | 0.711 |
pander::pander((rrAnalysisTest$ROCAnalysis$sensitivity),caption="Sensitivity")
| est | lower | upper |
|---|---|---|
| 0.198 | 0.131 | 0.281 |
pander::pander((rrAnalysisTest$ROCAnalysis$specificity),caption="Specificity")
| est | lower | upper |
|---|---|---|
| 0.894 | 0.769 | 0.965 |
pander::pander(t(rrAnalysisTest$thr_atP),caption="Probability Thresholds")
| 90% |
|---|
| 0.863 |
pander::pander(rrAnalysisTest$surdif,caption="Logrank test")
| N | Observed | Expected | (O-E)^2/E | (O-E)^2/V | |
|---|---|---|---|---|---|
| class=0 | 139 | 97 | 103.1 | 0.367 | 2.52 |
| class=1 | 29 | 24 | 17.9 | 2.118 | 2.52 |